Termination Proof Script
Consider the TRS R consisting of the rewrite rules
|
1: |
|
x + 0 |
→ x |
2: |
|
0 + x |
→ x |
3: |
|
s(x) + s(y) |
→ s(s(x + y)) |
4: |
|
(x + y) + z |
→ x + (y + z) |
5: |
|
x * 0 |
→ 0 |
6: |
|
0 * x |
→ 0 |
7: |
|
s(x) * s(y) |
→ s((x * y) + (x + y)) |
8: |
|
(x * y) * z |
→ x * (y * z) |
9: |
|
sum(nil) |
→ 0 |
10: |
|
sum(cons(x,l)) |
→ x + sum(l) |
11: |
|
prod(nil) |
→ s(0) |
12: |
|
prod(cons(x,l)) |
→ x * prod(l) |
|
There are 12 dependency pairs:
|
13: |
|
s(x) +# s(y) |
→ x +# y |
14: |
|
(x + y) +# z |
→ x +# (y + z) |
15: |
|
(x + y) +# z |
→ y +# z |
16: |
|
s(x) *# s(y) |
→ (x * y) +# (x + y) |
17: |
|
s(x) *# s(y) |
→ x *# y |
18: |
|
s(x) *# s(y) |
→ x +# y |
19: |
|
(x * y) *# z |
→ x *# (y * z) |
20: |
|
(x * y) *# z |
→ y *# z |
21: |
|
SUM(cons(x,l)) |
→ x +# sum(l) |
22: |
|
SUM(cons(x,l)) |
→ SUM(l) |
23: |
|
PROD(cons(x,l)) |
→ x *# prod(l) |
24: |
|
PROD(cons(x,l)) |
→ PROD(l) |
|
The approximated dependency graph contains 4 SCCs:
{13-15},
{17,19,20},
{24}
and {22}.
-
Consider the SCC {13-15}.
The usable rules are {1-4}.
By taking the AF π with
π(+#) = π(s) = 1 together with
the lexicographic path order with
empty precedence,
the rules in {3,13}
are weakly decreasing and
the rules in {1,2,4,14,15}
are strictly decreasing.
There is one new SCC.
-
Consider the SCC {13}.
There are no usable rules.
By taking the AF π with
π(+#) = 1 together with
the lexicographic path order with
empty precedence,
rule 13
is strictly decreasing.
-
Consider the SCC {17,19,20}.
The usable rules are {1-8}.
By taking the AF π with
π(*#) = 1 together with
the lexicographic path order with
precedence * ≻ + ≻ s,
the rules in {1-8,17,19,20}
are strictly decreasing.
-
Consider the SCC {24}.
There are no usable rules.
By taking the AF π with
π(PROD) = 1
and π(cons) = [2] together with
the lexicographic path order with
empty precedence,
rule 24
is strictly decreasing.
-
Consider the SCC {22}.
There are no usable rules.
By taking the AF π with
π(SUM) = 1
and π(cons) = [2] together with
the lexicographic path order with
empty precedence,
rule 22
is strictly decreasing.
Hence the TRS is terminating.
Tyrolean Termination Tool (0.03 seconds)
--- May 4, 2006